// 版本号对比
// 将版本号字符串按特定规则拆分成数组，再依次比较数组中对应位置的版本号片段


function compareVersions(version1, version2) {
  // 将版本号字符串按点号分割成数组
  const v1 = version1.split('.').map(Number);
  const v2 = version2.split('.').map(Number);
  // 获取两个版本号数组的最大长度
  const maxLength = Math.max(v1.length, v2.length);

  for (let i = 0; i < maxLength; i++) {
    // 如果 v1 当前位置没有值，默认为 0
    const num1 = i < v1.length ? v1[i] : 0;
    // 如果 v2 当前位置没有值，默认为 0
    const num2 = i < v2.length ? v2[i] : 0;

    if (num1 > num2) {
      return 1;
    } else if (num1 < num2) {
      return -1;
    }
  }
  // 版本号相等
  return 0;
}

// 示例使用
const version1 = '1.2.3';
const version2 = '1.2.4';
const result = compareVersions(version1, version2);
if (result === 1) {
  console.log(`${version1} 大于 ${version2}`);
} else if (result === -1) {
  console.log(`${version1} 小于 ${version2}`);
} else {
  console.log(`${version1} 等于 ${version2}`);
}    